package shoppingmall.manage.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import shoppingmall.manage.pojo.AdminUser;
import java.util.List;

import shoppingmall.manage.dto.LoginRequestParamsVO;

@Mapper
public interface AdministratorMapper {

    /**
     * 根据用户名和密码查询管理员(管理员登录)
     * @param user
     * @return
     */
    @Select("select username,password from tb_admin_user where username = #{username} and password = #{password}")
    public AdminUser getByUsernameAndPassword(LoginRequestParamsVO user);

    /**
     * 查询所有的后台管理员用户信息
     * @return
     */
    @Select("select * from tb_admin_user")
    public List<AdminUser> getAllAdminUserList();

    /**
     * 查询登录管理员的相关信息
     * @return 管理员信息
     */
    @Select("select * from tb_admin_user where username = #{username}")
    public AdminUser getAdminUserInfo (String username);

    /**
     * 单个或批量删除管理员用户
     * @param usernames 用户名集合day10-10
     */
    public int deleteAdminUsers(List<String> usernames);

    /**
     * 添加一个新的管理员用户
     */
    public void saveAdminUser (AdminUser adminUser);

    /**
     * 根据管理员id更新管理员用户信息
     */
    public int updateAdminUser (AdminUser adminUser);
}
